/*
Description
小伟暑假期间到大草原旅游，在一块石头上发现了一些有趣的碑文。碑文似乎是一个神秘古老的语言，只包括三个大写字母 C、O 和 W。尽管小伟看不懂，但是令他高兴的是，C、O、W的顺序形式构成了一句他最喜欢的奶牛单词“COW”。
现在，他想知道有多少次 COW 出现在文本中。
如果 COW 内穿插了其他字符，只要 COW 字符出现在正确的顺序，小伟也不介意。甚至，他也不介意出现不同的 COW 共享一些字母。
例如，CWOW 出现了 1 次 COW，CCOW 算出现了2 次 COW，CCOOWW 算出现了 8 次 COW。

Input
第 1 行为 1 个整数 N。
第 2 行为 N 个字符的字符串，每个字符是一个 C、O 或 W。

Output
输出 COW 作为输入字符串的子串出现的次数（不一定是连续的）。
提示：答案会很大，建议用 64 位整数（long long）。

Sample Input
6
COOWWW

Sample Output
6

Hint
对于 50% 的数据满足：N≤60。
对于 100% 的数据满足：N≤100000。

单组输入
*/

#include <bits/stdc++.h>
using namespace std;

int main()
{
    int n,i,j;
    string s;
    long long ans, c, w;
    cin >> n;
    cin >> s;
    ans = 0;
    for (i = 0; i < n; i++)
    {
        c = 0;
        w = 0;
        if (s[i] == 'O') // 以O为对象，看它前面多少C，后面多少W
        {
            for (j = 0; j < n; j++)
            {
                if (j < i && s[j] == 'C')
                    c++;
                else if (j > i && s[j] == 'W')
                    w++;
                else
                    continue;
            }
            ans += c * w;
        }
        //cout << c << " " << w<<endl;
    }
    cout << ans;
    return 0;
}